#include "udpServer.hpp"
#include <memory>
using namespace Server;

static void Usage()
{
    cout << "Usage: 可执行程序 local_port" << endl;
}

// 数据处理函数
void handlerMessage(string clientIp, uint16_t clientPort, string message)
{
    cout << "   对数据: " << message << " 进行处理" << endl;
}

//  ./udpServer port
int main(int argc, char *argv[])
{
    if (argc != 2)
    {
        Usage();
        exit(USAGE_ERR);
    }

    uint16_t port = atoi(argv[1]); // 将字符串转化为int，uint16_t，只存2个低字节
    // string ip=argv[1];
    // unique_ptr<udpServer> usvr(new udpServer(port,ip));
    unique_ptr<udpServer> usvr(new udpServer(handlerMessage, port));

    usvr->initServer();
    usvr->start();
    return 0;
}